上回我們使用了script檔案去執行我們的SQL命令,使用的方式是直接將.sql檔案拉進SSMS裡面去執行(F5),但是使用滑鼠拖曳→更改目標資料庫→按F5執行這樣一系列的動作其實會有以下問題:
1.手動操作容易失誤,有可能造成資料被覆蓋或刪除
2.當有大量檔案需要被執行時,這些重複性動作會占用大量時間
3.當一個腳本執行的時間需要數分鐘時,你可能會希望它能連續執行,不用時刻盯著進度準備下一動
讓我們後續使用一些方法來解決上述的問題
這次我們嘗試用其他方式去執行.sql檔案,我們使用跟上回相同的檔案進行操作,首先刪除上回執行腳本產生的內容,為避免介面操作,嘗試使用資料表的刪除語法,語法如下:
DROP TABLE {DataBase}..{Table}
DROP TABLE SecondDataBase..FirstTable
DROP TABLE SecondDataBase..SecondTable
接著開啟命令提示字元(CMD),我們要使用的是命令列為sqlcmd,安裝SSMS時即會安裝此命令列,當然也可以單獨安裝,安裝及說明連結,接下來我們先依照需要將命令列做簡單拆解,如下:
接著將所需要的命令列組合起來,語法如下:
sqlcmd -S {Server} –U {User} –P {Password} -d {DataBase} -i {FilePath}
在這邊我使用的是本機Server,所以不需要User和Password,另外我將.sql檔案放在C槽目錄下的temp資料夾中,最後將我們所需要的語法組合起來如下:
sqlcmd -S . -d SecondDataBase -i C:\temp\FirstDataBase.sql
按下Enter後即完成執行.sql腳本
更多小知識,我們下次見~~